The Calculator normally treats results like ‘1 / 0’ as errors; formulas like this are left in unsimplified form. But Calc can be put into a mode where such calculations instead produce “infinite” results.
The m i
(calc-infinite-mode) command turns this mode on and
off. When the mode is off, infinities do not arise except in
calculations that already had infinities as inputs. (One
exception is that infinite open intervals like
‘[0 .. inf)’
can be generated; however, intervals closed at infinity
(‘[0 .. inf]’)
will not be generated when Infinite mode is off.)
With Infinite mode turned on, ‘1 / 0’ will generate
uinf, an undirected infinity. See Infinities, for a discussion of
the difference between inf and uinf.
Also, ‘0 / 0’
evaluates to nan, the “indeterminate”
symbol. Various other functions can also return infinities in
this mode; for example, ‘ln(0) =
-inf’, and ‘gamma(-7) = uinf’. Once again, note
that ‘exp(inf) =
inf’ regardless of Infinite mode because this
calculation has infinity as an input.
The m i command
with a numeric prefix argument of zero, i.e., C-u 0 m
i, turns on a Positive Infinite mode in which zero is
treated as positive instead of being directionless. Thus,
‘1 / 0 = inf’
and ‘-1 / 0 =
-inf’ in this mode. Note that zero never
actually has a sign in Calc; there are no separate
representations for +0 and -0. Positive Infinite
mode merely changes the interpretation given to the single
symbol, ‘0’.
One consequence of this is that, while you might expect
‘1 / -0 =
-inf’, actually ‘1 / -0’ is equivalent to
‘1 / 0’, which
is equal to positive inf.